Liste üzerinde işaretçilerin durumları

6.1.2. İşaretçi Değişkenler ve Bağlantılı Liste

Genel olarak bağlantılı listeler dizi üzerinde kurulabilir veya malloc() gibi fonksiyonla bellek alanları dinamik olarak istenip kurulabilir. Bağlantılı listenin dinamik bellek yöntemiyle kullanılması daha yaygındır denilebilir. Bu durumda işaretçi değişkenler kullanılır. Aşağıda, şekilde bir bağlantılı liste üzerinde yapılan temel işlemlerin olası durumları gösterilmeye çalışılmıştır.

Bağlantılı liste boş iken heriki işaretçi değişken NULL değerine sahiptirler; malloc() ile yer istendiğinde alınan yerin başlangıç adresi p gibi geçici bir işaretçi değişkende tutulur. İlk ekleme yapıldığında ilk ve son işaretçileri aynı elemanı gösterir; daha sonraki eklemeler farklı değerlere sahip olurlar. Listeden bir eleman silinmesi/çıkarılması gerektiğinde önce bağlantı koparılır; bağlantı, silinmek istenenin bir önceki ve bir sonraki arasında yeniden kurulur ve silinecek elemanın işgal ettiği yer free(p) gibi bir fonksiyonla bellek yönetim birimine iade edilir.